package priv.abadstring.study.haoke.im.dao;

import com.mongodb.client.result.DeleteResult;
import com.mongodb.client.result.UpdateResult;
import org.bson.types.ObjectId;
import priv.abadstring.study.haoke.im.bean.Message;

import java.util.List;

/**
 * MessageDAO
 *
 * @author aBadString
 * @date 2021-07-30 16:42:22
 */
public interface MessageDAO {
    /**
     * 查询点对点聊天记录
     */
    List<Message> findListByFromAndTo(Long fromId, Long toId, Integer page, Integer rows);

    /**
     * 根据id查询数据
     */
    Message findMessageById(String id);

    /**
     * 更新消息状态
     */
    UpdateResult updateMessageState(ObjectId id, Integer status);

    /**
     * 新增消息数据
     */
    Message saveMessage(Message message);

    /**
     * 根据消息id删除数据
     */
    DeleteResult deleteMessage(String id);
}
